/**
 *
 */
package com.fita.admin.entity;

import com.fita.entity.order.PayStatus;

import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import java.util.Date;

/**
 * @author downpour
 *
 */
public class PaymentContext {

    /** (openid|userId) */
    private String userId;

    /** 支付渠道  */
    private String channel;

    /** 渠道支付方式 */
    private String channelType;

    /** 前台通知地址 */
    private String callbackUrl;

    /** 支付抬头  */
    private String subject;

    /** 支付金额  */
    private int amount;

    /** 状态  */
    @Enumerated(EnumType.ORDINAL)
    private PayStatus status;

    /** 支付凭证 */
    private String token;

    /** 订单号  */
    private String orderCode;

    /** 支付渠道返回的交易流水号 */
    private String transactionCode;

    /** 支付回调设置支付成功的时间  */
    private Date hookTime;

    /** 创建支付环境的时间   */
    private Date createTime;

    /** 最后更改时间 */
    private Date lastUpdateTime;

    /**
     * The default constructor
     */
    public PaymentContext() {

    }


    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getChannel() {
        return channel;
    }

    public void setChannel(String channel) {
        this.channel = channel;
    }

    public String getChannelType() {
        return channelType;
    }

    public void setChannelType(String channelType) {
        this.channelType = channelType;
    }

    public String getCallbackUrl() {
        return callbackUrl;
    }

    public void setCallbackUrl(String callbackUrl) {
        this.callbackUrl = callbackUrl;
    }

    public String getSubject() {
        return subject;
    }

    public void setSubject(String subject) {
        this.subject = subject;
    }

    public int getAmount() {
        return amount;
    }

    public void setAmount(int amount) {
        this.amount = amount;
    }

    public PayStatus getStatus() {
        return status;
    }

    public void setStatus(PayStatus status) {
        this.status = status;
    }

    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }

    public String getOrderCode() {
        return orderCode;
    }

    public void setOrderCode(String orderCode) {
        this.orderCode = orderCode;
    }

    public String getTransactionCode() {
        return transactionCode;
    }

    public void setTransactionCode(String transactionCode) {
        this.transactionCode = transactionCode;
    }

    public Date getHookTime() {
        return hookTime;
    }

    public void setHookTime(Date hookTime) {
        this.hookTime = hookTime;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public Date getLastUpdateTime() {
        return lastUpdateTime;
    }

    public void setLastUpdateTime(Date lastUpdateTime) {
        this.lastUpdateTime = lastUpdateTime;
    }
}
